
#include "Perus.h"




void KUVA::Alusta( char *Nimi, float W, float H, float UAlku, float VAlku, float ULeveys, float VKorkeus )
{
    TekstuurinNimi = Nimi;
    TekstuurinNimiTarkistettu = false;
    Leveys = W;
    Korkeus = H;
    U1 = UAlku;
    V1 = VAlku;
    U2 = UAlku + ULeveys;
    V2 = VAlku + VKorkeus;
    Vari = Valkoinen;
}







void GRAFIIKKA::LisaaKuva( KUVA &UusiKuva, double X, double Y, double KokoKerroin, VARI Vari )
{
    if( !UusiKuva.TekstuurinNimiTarkistettu )
    {
        for(int i=0; i<TekstuurienLKM; i++)
        {
            if(strcmp( TekstuuriPuskuri[i].NimiID, UusiKuva.TekstuurinNimi ) == 0)
            {
                UusiKuva.TekstuuriInd = i;
            }
        }
    }
    
    if(KuvienLKM == 0)
    {
        delete [] KuvaPuskuri; KuvaPuskuri = NULL;
        KuvaPuskuri = new KUVA [10000];
    }
    

    KuvaPuskuri[KuvienLKM] = UusiKuva;

    KuvaPuskuri[KuvienLKM].X = X;
    KuvaPuskuri[KuvienLKM].Y = Y;
    KuvaPuskuri[KuvienLKM].Leveys *= KokoKerroin;
    KuvaPuskuri[KuvienLKM].Korkeus *= KokoKerroin;
    KuvaPuskuri[KuvienLKM].Vari = Vari;
    
    KuvienLKM++;
}

void GRAFIIKKA::PoistaKuva()
{
    if(KuvienLKM > 0) KuvienLKM--;
}


void GRAFIIKKA::TyhjennaKuvaPuskuri()
{
    KuvienLKM = 0;
    delete [] KuvaPuskuri;
    KuvaPuskuri = NULL;
}
















